package com.flyme.module.base.provider.service;

import com.flyme.common.core.model.ResultBody;
import com.flyme.core.base.supper.service.IBaseService;
import com.flyme.module.base.client.entity.SysBalance;
import com.flyme.module.order.client.entity.Order;

import java.math.BigDecimal;

/**
 * 账户
 */
public interface SysBalanceService extends IBaseService<SysBalance> {

    /**
     * 创建账户
     */
    SysBalance insert(Long userId);

    /**
     * 充值回调处理
     */
    ResultBody chargeSuccess(Long balanceId, BigDecimal amount, String outTradeNo);

    /**
     * 根据用户ID查询
     */
    SysBalance findByUser(Long accountInfoId);

    /**
     * 订单支付成功后回调逻辑处理
     */
    ResultBody pay_back(Order order);

    /**
     * 支付回调（学习币）
     */
    ResultBody payBack(String orderId, String payType);

    /**
     * 银联支付成功回调逻辑处理
     */
    ResultBody unionpay_back(String outTradeNo);

    Boolean addshareLog(String  orderId,String body,BigDecimal amount,Long userId,Long sourceUserId,String title);


}
